package com.lianniu.mgr.orderManage.dao;

import java.util.List;

import org.apache.ibatis.annotations.Param;

import com.lianniu.mgr.orderManage.vo.OrderConditionVo;
import com.lianniu.mgr.orderManage.vo.OrderDetailVo;
import com.lianniu.mgr.orderManage.vo.OrderInfoVo;
import com.lianniu.mgr.orderManage.vo.ShipmentVo;

public interface IOrderManageDao {

  /**
   * @Title: getBuyerListForPage 
   * @Description: 获取buyer列表
   * @author: Administrator
   * @param condition
   * @return
   * @date: 2016年6月29日 下午8:41:19 
   * @return: List<BuyerVo>
   */
  public List<OrderInfoVo> getOrderListForPage(OrderConditionVo condition);
  /**
   * @Title: getOrderDetailList 
   * @Description: 根据orderid获取明细list
   * @author: Dylan
   * @param orderId
   * @return
   * @date: 2016年7月12日 上午10:51:53 
   * @return: List<OrderDetailVo>
   */
  public List<OrderDetailVo> getOrderDetailList(@Param("orderId")String orderId);
  /**
   * @Title: getOrderById 
   * @Description: 根据订单ID获取orderinfo
   * @author: Dylan
   * @param orderId
   * @return
   * @date: 2016年7月12日 下午3:41:02 
   * @return: OrderInfoVo
   */
  public OrderInfoVo getOrderById(@Param("orderId")String orderId);
  /**
   * @Title: shipment 
   * @Description: 后台发货
   * @author: lzz
   * @param ship
   * @return
   * @date: 2016年8月27日 下午5:37:09 
   * @return: boolean
   */
  public boolean shipment(ShipmentVo ship);

  /**
   * 更新删除标志
   * @param orderID
   * @return
   */
  public  int updateOrderDelFlag(@Param("orderID")String orderID);

  /**
   * 更新业务员
   * @param orderID
   * @return
   */
  public  int updateOrderStaff(@Param("orderID")String orderID,@Param("staff")String staff);

  /**
   * 更新评论
   * @param orderID
   * @return
   */
  public  int updateOrderComment(@Param("orderID")String orderID,@Param("commResult")String commResult,@Param("comment")String comment);

  /**
   * 插入评论
   * @param orderID
   * @return
   */
  public  int insertOrdercomment(@Param("orderID")String orderID,@Param("commResult")String commResult,@Param("comment")String comment);

  /**
   *查询评论
   *@param orderID
   *@return
   */
  public int getOrdercommentByOrderId(@Param("orderID")String orderID);

  /**
   * 更新订单头
   * @param orderInfoVo
   * @return
   */
  public  int updateOrderInfo(OrderInfoVo orderInfoVo);

  /**
   * 更新订单明细
   * @param orderDetailVo
   * @return
   */
  public  int updateOrderDetail(OrderDetailVo orderDetailVo);

  /**
   * 更新订单状态
   * @param orderID
   * @return
   */
  public  int updateOrderStatus(@Param("orderID")String orderID,@Param("status")String status);

  /**
   * 取消订单
   * @param orderID
   * @return
   */
  public  int cancelOrderStatus(@Param("orderID")String orderID,@Param("status")String status,@Param("cancelReason")String cancelReason);

  /**
   * 订单找货完成
   * @param orderID
   * @return
   */
  public  int updateOrderSF(@Param("orderID")String orderID,@Param("status")String status,@Param("searchFinishedRemark")String searchFinishedRemark,@Param("searchFinishedImg1")String searchFinishedImg1,@Param("searchFinishedImg2")String searchFinishedImg2);


  /**
   * 订单付款完成
   * @param orderID
   * @return
   */
  public  int updateOrderFA(@Param("orderID")String orderID,@Param("status")String status,@Param("paidRemark")String paidRemark,@Param("paidImgUrl1")String paidImgUrl1,@Param("paidImgUrl2")String paidImgUrl2);


  /**
   * 订单发货完成
   * @param orderID
   * @return
   */
  public  int updateOrderDL(@Param("orderID")String orderID,@Param("status")String status,@Param("deliveRemark")String deliveRemark,@Param("deliveImgUrl1")String deliveImgUrl1,@Param("deliveImgUrl2")String deliveImgUrl2);

  /**
   * 订单签收完成
   * @param orderID
   * @return
   */
  public  int updateOrderCF(@Param("orderID")String orderID,@Param("status")String status,@Param("confirmRemark")String confirmRemark,@Param("confirmImg1")String confirmImg1,@Param("confirmImg2")String confirmImg2);

}
